:root {
  /* 主色调 - 橙色系 */
  --primary-color: #FF6B35;      /* 主橙色 */
  --primary-light: #FF8E63;      /* 浅橙色 */
  --primary-lighter: #FFB495;    /* 更浅橙色 */
  --primary-dark: #E55620;       /* 深橙色 */

  /* 辅助色 */
  --secondary-color: #FFD166;    /* 活力黄 */
  --accent-color: #4ECDC4;       /* 清新青 */
  --success-color: #06D6A0;      /* 成功绿 */
  --warning-color: #FFD166;      /* 警告黄 */
  --error-color: #EF476F;        /* 错误粉红 */
  --info-color: #118AB2;         /* 信息蓝 */

  /* 中性色 */
  --text-primary: #2D3748;       /* 主要文字 */
  --text-secondary: #718096;     /* 次要文字 */
  --text-tertiary: #A0AEC0;      /* 辅助文字 */
  --border-color: #E2E8F0;       /* 边框色 */
  --background-color: #F7FAFC;   /* 背景色 */
  --surface-color: #FFFFFF;      /* 表面色 */
  --hover-color: #FFF5EB;        /* 悬停背景 */
}

/* Element Plus 主题配置 */
.el-button--primary {
  background-color: var(--primary-color);
  border-color: var(--primary-color);
}

.el-button--primary:hover {
  background-color: var(--primary-dark);
  border-color: var(--primary-dark);
}

.el-menu-item.is-active {
  color: var(--primary-color);
  border-right: 2px solid var(--primary-color);
}

.el-tabs__item.is-active {
  color: var(--primary-color);
}

.el-tabs__active-bar {
  background-color: var(--primary-color);
}

.el-checkbox__input.is-checked .el-checkbox__inner {
  background-color: var(--primary-color);
  border-color: var(--primary-color);
}

.el-radio__input.is-checked .el-radio__inner {
  background-color: var(--primary-color);
  border-color: var(--primary-color);
}

/* 自定义样式类 */
.orange-gradient-bg {
  background: linear-gradient(135deg, var(--primary-light) 0%, var(--primary-color) 100%);
}

.vibrant-card {
  background: white;
  border-radius: 12px;
  box-shadow: 0 4px 20px rgba(255, 107, 53, 0.15);
  border: 1px solid var(--border-color);
}

.energy-badge {
  background: var(--secondary-color);
  color: var(--text-primary);
  font-weight: 600;
  padding: 4px 12px;
  border-radius: 20px;
}

/* 状态颜色 */
.status-success {
  color: var(--success-color);
  background-color: rgba(6, 214, 160, 0.1);
}

.status-warning {
  color: var(--warning-color);
  background-color: rgba(255, 209, 102, 0.1);
}

.status-error {
  color: var(--error-color);
  background-color: rgba(239, 71, 111, 0.1);
}

*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  font-weight: normal;
}

body {
  min-height: 100vh;
  color: var(--color-text);
  background: var(--color-background);
  transition:
    color 0.5s,
    background-color 0.5s;
  line-height: 1.6;
  font-family:
    Inter,
    -apple-system,
    BlinkMacSystemFont,
    'Segoe UI',
    Roboto,
    Oxygen,
    Ubuntu,
    Cantarell,
    'Fira Sans',
    'Droid Sans',
    'Helvetica Neue',
    sans-serif;
  font-size: 15px;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
